home *** CD-ROM | disk | FTP | other *** search
/ Aminet 40 / Aminet 40 (2000)(Schatztruhe)[!][Dec 2000].iso / Aminet / util / cdity / MRQ.lha / MRQ / Source / RCS / gfxfiles.c < prev    next >
C/C++ Source or Header  |  2000-10-16  |  3KB  |  135 lines

  1. head    1.2;
  2. access;
  3. symbols;
  4. locks
  5.     msbethke:1.2; strict;
  6. comment    @ * @;
  7.  
  8.  
  9. 1.2
  10. date    2000.01.25.17.31.21;    author msbethke;    state Exp;
  11. branches;
  12. next    1.1;
  13.  
  14. 1.1
  15. date    2000.01.25.17.21.27;    author msbethke;    state Exp;
  16. branches;
  17. next    ;
  18.  
  19.  
  20. desc
  21. @Guigfx/datatypes handling, gfx file stuff
  22. @
  23.  
  24.  
  25. 1.2
  26. log
  27. @Adapted to new header names
  28. @
  29. text
  30. @/* gfxfiles.c
  31. ** Guigfx/datatypes handling, gfx file stuff
  32. **
  33. ** ©1997-1999 by Matthias.Bethke <Matthias.Bethke@@gmx.net>
  34. ** You are free to modify this source or use parts of it in your
  35. ** own programs as long as they are distributed as freeware.
  36. */
  37.  
  38. /*
  39. ** $Id: gfxfiles.c 1.1 2000/01/25 17:21:27 msbethke Exp msbethke $
  40. **
  41. ** $Log: gfxfiles.c $
  42. ** Revision 1.1  2000/01/25 17:21:27  msbethke
  43. ** Initial revision
  44. **
  45. */
  46.  
  47.  
  48. #include <proto/exec.h>
  49. #include <proto/dos.h>
  50. #include <proto/locale.h>
  51. #include <proto/graphics.h>
  52. #include <proto/intuition.h>
  53. #include <proto/datatypes.h>
  54. #include <proto/guigfx.h>
  55. #include <exec/memory.h>
  56. #include <dos/dosextens.h>
  57. #include <guigfx/guigfx.h>
  58. #include <lib/mb_utils.h>
  59. #include <string.h>
  60. #include <stdlib.h>
  61. #include "mrq.h"
  62. #include "config.h"
  63. #include "gfxfiles.h"
  64.  
  65. /* local protos */
  66. static void FillImgButtonStruct(struct MRQImageButton*, STRPTR);
  67.  
  68.  
  69.  
  70. BOOL PreloadImage(STRPTR file, struct MRQImage *img)
  71. {
  72.     return (BOOL)(img->mi_Object = LoadPicture(file,GGFX_UseMask,TRUE,TAG_DONE));
  73. }
  74.  
  75. void FreePreloaded(struct MRQConfig *cfg)
  76. {
  77. struct MRQEventClass *mec;
  78. APTR o;
  79.  
  80.     if(o = cfg->mc_DefClass.mec_Image.mi_Object) DeletePicture(o);
  81.  
  82.     for(    mec = (struct MRQEventClass*)(cfg->mc_ClassList.mlh_Head);
  83.             mec->mec_Node.mln_Succ;
  84.             mec=(struct MRQEventClass*)(mec->mec_Node.mln_Succ))    
  85.     {
  86.         if((o = mec->mec_Image.mi_Object) &&
  87.             (!(((struct MRQImage*)o)->mi_Flags & MIF_FILENAME)))
  88.         {
  89.             prdebug("Freeing preloaded image @@$%08lx\n",o);
  90.             DeletePicture(o);
  91.         }
  92.     }
  93. }
  94.  
  95. static void FillImgButtonStruct(struct MRQImageButton *ib, STRPTR filename)
  96. {
  97.     if(filename)
  98.     {
  99.         ib->mib_Picture = LoadPicture(filename,GGFX_UseMask,TRUE,TAG_DONE);
  100.     }
  101. }
  102.  
  103. void ReadImageButtons(struct MRQConfig *cfg)
  104. {
  105.     FillImgButtonStruct(&cfg->mc_IButton_Yes,ttVars.IB_Yes);
  106.     FillImgButtonStruct(&cfg->mc_IButton_No,ttVars.IB_No);
  107.     FillImgButtonStruct(&cfg->mc_IButton_Cancel,ttVars.IB_Cancel);
  108. }
  109.  
  110. void FreeImageButtons(struct MRQConfig *cfg)
  111. {
  112.     /* color tables will be released when the pool is deleted */
  113.     if(cfg->mc_IButton_Yes.mib_Picture) DeletePicture(cfg->mc_IButton_Yes.mib_Picture);
  114.     if(cfg->mc_IButton_No.mib_Picture) DeletePicture(cfg->mc_IButton_No.mib_Picture);
  115.     if(cfg->mc_IButton_Cancel.mib_Picture) DeletePicture(cfg->mc_IButton_Cancel.mib_Picture);
  116. }
  117. @
  118.  
  119.  
  120. 1.1
  121. log
  122. @Initial revision
  123. @
  124. text
  125. @d10 5
  126. a14 1
  127. ** $Id:$
  128. a15 1
  129. ** $Log:$
  130. d33 2
  131. a34 2
  132. #include "mrq_config.h"
  133. #include "mrq_dtypes.h"
  134. @
  135.